package com.example.shop_2210.utils

import android.content.Context
import android.widget.ImageView
import com.bumptech.glide.Glide
import com.bumptech.glide.load.engine.DiskCacheStrategy
import com.bumptech.glide.load.resource.bitmap.CenterCrop
import com.bumptech.glide.load.resource.bitmap.RoundedCorners
import com.example.shop_2210.R

/**
 * 图片框架工具类
 */
class GlideUtils {
    companion object{
        fun loadImage(context:Context,url:String,imageView:ImageView){
            Glide.with(context)
                .load(url)
                .error(R.mipmap.ic_launcher)//网址错误时，显示该图片
                .placeholder(R.mipmap.ic_launcher)//当图片较大时，一时不能加载出来，可以先用这个图片提示或者占据位置
                .skipMemoryCache(false)//是否跳过缓存
                .diskCacheStrategy(DiskCacheStrategy.AUTOMATIC)  //缓存策略：根据情况自动缓存
                .into(imageView)
        }
        fun loadCircleImage(context:Context,url:String,imageView:ImageView){
            Glide.with(context)
                .load(url)
                .error(R.mipmap.ic_launcher)//网址错误时，显示该图片
                .placeholder(R.mipmap.ic_launcher)//当图片较大时，一时不能加载出来，可以先用这个图片提示或者占据位置
                .skipMemoryCache(false)//是否跳过缓存
                .diskCacheStrategy(DiskCacheStrategy.AUTOMATIC)  //缓存策略：根据情况自动缓存
                .circleCrop()//圆形图片
                .into(imageView)
        }
        fun loadCornerImage(context:Context,url:String,imageView:ImageView){
            Glide.with(context)
                .load(url)
                .error(R.mipmap.ic_launcher)//网址错误时，显示该图片
                .placeholder(R.mipmap.ic_launcher)//当图片较大时，一时不能加载出来，可以先用这个图片提示或者占据位置
                .skipMemoryCache(false)//是否跳过缓存
                .diskCacheStrategy(DiskCacheStrategy.AUTOMATIC)  //缓存策略：根据情况自动缓存
                .transform(CenterCrop(),RoundedCorners(20))//圆角图片
                .into(imageView)
        }
    }
}